﻿<?php
class AgentController extends Zend_Controller_Action
{
	public function showAction()
	{
		$pa_id = $_GET['id'];
		$u_password= $_GET['k'];
		$timezone  = +7; //(GMT +7:00) 
		$timenow = strtotime(gmdate("Y-m-d H:i:s", time() + 3600*($timezone+date("0")))); 
		$this->view->stop = false;
		
		if($u_password!=null&& $pa_id!=null){
			// Kiểm tra mã người dùng.
			$userModel = new Model_User();
			$user = $userModel->getUserByPassword($u_password);
			$u_id = $user[0]['u_id'];
			$this->view->password = $user[0]['u_password'];
			// Kiểm tra model;
			$agentModel  = new Model_Agent();
			$agent = $agentModel->getAgentByUserPaId($u_id,$pa_id);
			// gán biến time cho agent nếu agent tồn tại
			if(count($agent)>0){
				$this->view->time = $agent[0]['a_time'];
				// post;
				if($this->_request->isPost())
				{
					$modelAuction = new Model_ProductAuction();
					$result = $modelAuction->getProductAuctionById($pa_id);
					
					$userAuction = new Model_UserAuction();
					$auctionuser = $userAuction->getUserAuctionByPaId($pa_id);
					// Nếu đấu giá chưa kết thúc;
					$pa_giobatdau = strtotime($result[0]['pa_giobatdau']);
					$pa_gioketthuc = strtotime($result[0]['pa_gioketthuc']);
					
					if($pa_giobatdau<$timenow && $pa_gioketthuc >$timenow){
						// Nếu đã có người đặt giá
						if(count($auctionuser)>0||$auctionuser['u_id']!=$u_id){	
							// Nếu giá chấp nhận còn > giá lớn nhất hiện tại thì đấu giá tiếp.
							if($agent[0]['a_giachapnhan'] > $auctionuser[0]['ua_gia']){
								$ua_gia = $auctionuser[0]['ua_gia']+ $result[0]['pa_buocgia'];
								$userAuction->createUserAuction ($u_id,$pa_id,$ua_gia);
							}
							else{
								$this->view->stop = true;
							}
						}
						// Nếu chưa có người đặt 
						else{
							$ua_gia = $result[0]['pa_giakhoidiem']+ $result[0]['pa_buocgia'];
							$userAuction->createUserAuction ($u_id,$pa_id,$ua_gia);
						}
					}
					else{ // ket thuc thoi gian;
						$this->view->stop = true;
					}
					$this->view->isPost = true;
				}
				else{
						$modelAuction = new Model_ProductAuction();
						$result = $modelAuction->getProductAuctionById($pa_id);
						$test = array();
						$i=0;
						foreach($result as $x)
						{
							$test[$i]['pa_id'] = "".$x['pa_id']."";
							$modelProduct = new Model_Product();
							$product = $modelProduct->getProductById($x['p_id']);
							$test[$i]['p_id'] = "".$product[0]['p_id']."";
							$test[$i]['p_ten'] = "".$product[0]['p_ten']."";
							$test[$i]['p_linkImg'] = "".$product[0]['p_linkImg']."";
							$test[$i]['p_gia'] = "".$product[0]['p_gia']."";
							$test[$i]['pa_giakhoidiem'] = "".$x['pa_giakhoidiem']."";
							$test[$i]['pa_buocgia'] = "".$x['pa_buocgia']."";

							$test[$i]['pa_giobatdau'] = "".$x['pa_giobatdau']."";
							$test[$i]['pa_gioketthuc'] = "".$x['pa_gioketthuc']."";
							$i++;
						}
						$this->view->productauction = $test;	
						$this->view->isPost = false;
				}
			}
			else{
				echo"Chưa tạo agent cho phiên đấu giá này !";
			}
		}	
		else{
				echo "Bạn chưa Đăng nhập!";
		}
	}

	
	
	public function addAction()
	{
		if($this->_request->isPost())
		{
			//session_start();
			//$u_id = $_SESSION['u_id'] ;
			//$pa_id = $_SESSION['pa_id'];
			$u_password = $_GET['k'];
			$modelUser = new Model_User();
			$user = $modelUser->getUserByPassword($u_password);
			$u_id = $user[0]['u_id'];
			$pa_id = $_GET['id'];
			$a_giachapnhan = $_POST['a_giachapnhan'];
			$modelAgent = new Model_Agent();
			// Thuật toán tính thời gian ;
			$a_time = $modelAgent->computeTimeAgent(20000,30000);
			// Tạo agent mới.
			$modelAgent->createAgent($pa_id, $u_id, $a_giachapnhan, $a_time);
			$this->view->isPost = true;
		}
		else{
			//session_start();
			$u_password = $_GET['k'];
			$pa_id = $_GET['id'];

			$form = new Form_AgentForm();

			// Lấy sản phẩm đấu giá tương ứng pa_id
			$modelProductAuction = new Model_ProductAuction();
			$productAuction = $modelProductAuction->getProductAuctionById($pa_id);

			// Lấy sản phẩm tương ứng với pa_id		
			$modelProduct = new Model_Product();
			$product = $modelProduct->getProductById($productAuction[0]['p_id']);	
	
			// Lấy user tương ứng với pass
			//$modelUser = new Model_User();
			//$user = $modelUser->getUserByPassword($u_password);
		
			//$_SESSION['u_id'] = $user[0]['u_id'];
			//$_SESSION['pa_id'] = $pa_id;
				
			$this->view->form = $form;
			//$this->view->user = $user;
			$this->view->product = $product;
			$this->view->isPost = false; 
		}
	}
	
}
